package com.yunke.dto.circle;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import java.util.List;

/**
 * 评论动态DTO
 * 
 * @author yunke
 * @since 1.0.0
 */
@Data
@Schema(description = "评论动态请求")
public class YunkeCircleCommentDto {

    /**
     * 动态ID
     */
    @NotNull(message = "动态ID不能为空")
    @Schema(description = "动态ID", example = "1")
    private Long circleId;

    /**
     * 父评论ID（回复评论时使用）
     */
    @Schema(description = "父评论ID（回复评论时使用）", example = "0")
    private Long parentId = 0L;

    /**
     * 被回复用户ID
     */
    @Schema(description = "被回复用户ID", example = "2")
    private Long replyUserId;

    /**
     * 评论内容
     */
    @NotBlank(message = "评论内容不能为空")
    @Size(max = 500, message = "评论内容不能超过500个字符")
    @Schema(description = "评论内容", example = "说得很对！")
    private String content;

    /**
     * 评论图片列表
     */
    @Schema(description = "评论图片列表")
    private List<String> images;
} 